Tomographic image reconstruction is usually performed on a computer central processing unit (CPU). CPU's are suitable for general purpose computation. For this reason, they are easy to use and program. However, list-mode tomographic image reconstruction on CPUs is computationally intensive, due to the large number of line back- and forward-projections that need to be performed.
The number of detector elements in tomographic imaging systems continues to increase in order to improve resolution and sensitivity. One major consequence of this is that sinogram-based image reconstruction iterative algorithms have become less attractive due to large memory requirements for storing the system matrix. On-the-fly list-mode based iterative reconstruction schemes circumvent the memory issue but are computationally expensive. For example, in list-mode 3D-Ordered Subsets Expectation Maximization (OSEM), a very large number (typically >108) of forward projections from the image voxel space onto lines of response (response lines between any two system detector elements) are performed. A similar number of back projections are done from the lines of response onto the voxel space. When reconstruction is performed on CPUs, most of the computation time is spent doing these operations. One expensive solution to this problem is to use a large cluster of computers to perform 3D list-mode reconstruction. Without such a computer cluster, practical reconstruction for most applications is limited to Filtered Back projection (FBP) or rebinned 3D data for 2D-OSEM.
Graphics cards are usually used to render 3-dimensional geometries on a computer screen (for example, in video games). The main microprocessor of a graphics card is called a graphics processing unit (GPU). The gaming and computer graphics rendering industries have created a market for powerful and cost-effective GPU chips. GPU performances are currently doubling every six months. GPU raw performance can now outperform CPU performance, but because of their architecture, it is very difficult to use GPUs in place of CPUs.
Recently, advances have been made in using GPUs for scientific computing applications such as tomographic image reconstruction. Current GPU implementations use only the 2D texture-mapping capability of the GPU and have been limited to fan-beam and parallel beam X-ray computed tomography (X-Ray CT) image reconstruction. These implementations cannot accomplish the individual line forward- and back-projection used in computationally expensive list-mode reconstruction schemes. In addition, these methods do not allow incorporating a blurring kernel to each line. Accordingly, there is a need in the art to develop methods of implementing tomographic line projection algorithms on GPUs.